<!DOCTYPE html>
<html>
<head>
	<meta charset="utf-8">
	<meta http-equiv="X-UA-Compatible" content="IE=edge">
	<title></title>
	<link rel="stylesheet" href="">
</head>
<body>
	<script>
		// 闭包产生的原因
		// 一个函数的返回值是另一个函数，而返回的那个函数调用了其父函数内部的变量，如果返回的这个函数在外部执行，就产生了闭包
		var count = 0;
		function add() {
			return function() {
				count ++;
				alert(count)
			}
		}
		var s = add();
		s();
		s();
	</script>
</body>
</html>